1. Field of the Invention
The present invention relates generally to telecommunications systems and internetworking. More specifically, the present invention pertains to performing real-time multimedia communications over data networks.
2. Related Art
The global Internet has quickly become a cost-effective and reliable medium for long distance communications. As well known to those skilled in the relevant art(s), the global Internet is simply a vast interconnection of various computer networks. This multitude of computer networks varies in size and type such as, local internets, corporate intranets, local area networks (LAN), wide area networks (WAN), private enterprise networks, etc.
The evolution of Internet technologies has made it possible for government officials, educational institutions, businesses, nonprofit organizations and individuals to access and use the local networks or personal computers of other persons or organizations. Internet users have been able to establish Web sites or home pages to promote commercial or personal activities. For example, one may browse various Web sites to seek information, purchase products or services, or complete customer surveys.
Since the Internet has historically represented a low-cost alternative to long distance communications, technological advancements have paved the way for multimedia transmissions over the Internet. The Internet has been used to transmit data, voice, video and graphics. As a result, the Internet has evolved to support electronic mailing services (Email), video-conferencing, voice telephony and facsimile. Traditionally speaking, multimedia would have been transmitted at regular rates over Public Switched Telephone Networks (PSTN) (also called Plain Old Telephone System (POTS)). The Internet, at present, provides an opportunity to transmit multimedia at a significantly lower price—the price of maintaining an account with an Internet Service Provider (ISP) which currently ranges between $9.99 to $21.99 per month.
Unfortunately, the voice communications over the Internet are not as reliable as voice communications over a PSTN. The standard Internet Protocol (IP) developed to govern communications over public and private Internet backbones does not provide any quality of service (QoS) guarantees. The protocol is defined in Internet Standard (STD) 5, Request for Comments (RFC) 791 (Internet Architecture Board). IP communications continue to suffer from problems related to delay, packet loss,jitter and bandwidth availability. Low QoS can be tolerated with Email, facsimile messages and data downloads from remote Web sites since communication can be retried several times until the information has correctly been transferred. However, with real-time voice communications, such as telephone conversations, QoS becomes a significant issue. In other words, delays, loss and jitter can significantly impact a user's ability to receive and comprehend voice or video communications.
For example, applications depending on IP networks cannot generally reserve the necessary bandwidth for communication using a widely deployed means. Depending on various factors, such as time of day and locality of the originating or destination call, the network conditions are often not sufficient to sustain the quality of the voice communication. Therefore, one major concern involves the ability to reserve the amount of bandwidth required for each call and to have bounds on other factors affecting quality, such as delay and packet loss. Additionally, current protocols for Internet telephony lose a significant amount of efficiency due to packet overhead caused by the addition of headers. The typical size of data within a frame approximates only twenty bytes. The headers typically include a local network address (e.g., Ethernet, Token Ring, Asynchronous Transfer Mode (ATM), etc.) header, IP address header, and IP transport header, such as Transmission Control Protocol (TCP) or User Datagram Protocol (UDP), and Real-Time Transport Protocol (RTP) header. The header size collectively averages anywhere from thirty to sixty bytes. As shown in Table I, the header size can represent as much as 75% of the required bandwidth, or rather 300% of the payload or data frame. To transmit one data frame, the IP network would require a bandwidth index of4.0. In other words, the required bandwidth is four times the size of the data frame. To reduce the needed bandwidth, as seen in Table I, a gateway or router can aggregate the voice frames to reduce the overhead. For instance, using a buffer to aggregate three voice frames and transmit the aggregated frames in a single data packet, the gateway would reduce the overhead from 75% to 50%.
TABLE I#DataFrames per%BandwidthPacketLatencyOverheadIndex130 ms75%4.0260 ms60%2.5390 ms50%2.0
Buffering the frames, however, typically leads to a second major concern—call latency. When the IP network transmits data, such as Email or facsimile messages, the receiver can tolerate delays in receiving the data packets without sacrificing QoS. However, during real-time telephone conversations, delays in receiving data packets can significantly impair the parties' ability to speak and hear each other clearly. Therefore, using the buffer to aggregate the data frames increases the latency proportionally to the number of frames. Because the originating gateway must wait until the number of frames required for transmission have been aggregated, each additional frame adds latency equal to the length of the frame being buffered.
A third major concern is that data packets can be lost during the transmission, thereby leaving gaps in the conversation. Generally speaking, IP and UDP environments provide unreliable networks. Data packets can be lost or delayed for a variety of reasons, such as bandwidth congestion, unavailable routes, defective Internet engines, etc. If the data packet is lost, the only way to retrieve it is for the destination gateway to send a message to the originating gateway to ask it to retransmit the data packet. This, of course, would add additional delays to receiving the message, thus degrading the quality of the voice communication and providing an unsuitable medium for real-time communication.
Consequently, an IP communications system, method and computer program product are needed to solve the above-identified problems and provide an efficient and cost-effective way to provide real-time bidirectional communication of multimedia, mitigate call latency, conserve bandwidth requirements and reduce packet loss.